function(storage_unittest case)
  ob_unittest(${ARGV})
  target_link_libraries(${case} PRIVATE mockcontainer)
endfunction()

add_subdirectory(mockcontainer)
add_subdirectory(transaction)
add_subdirectory(blocksstable)

storage_unittest(test_save_storage_info)
storage_unittest(test_range_iterator)
storage_unittest(test_ob_col_map)
storage_unittest(test_placement_hashmap)
storage_unittest(test_parallel_external_sort)
storage_unittest(test_i_store)
storage_unittest(test_sstable_merge_info_mgr)
storage_unittest(test_sstable_single_get)
storage_unittest(test_sstable_single_scan)
storage_unittest(test_sstable_multi_get)
storage_unittest(test_sstable_multi_scan)
storage_unittest(test_sstable_single_exist)
storage_unittest(test_sstable_multi_exist)
storage_unittest(test_pg_meta_checkpoint)
storage_unittest(test_pg_macro_meta_checkpoint)
storage_unittest(test_interm_macro_mgr)
storage_unittest(test_multi_version_sparse_sstable_single_get)
storage_unittest(test_multi_version_sparse_sstable_single_scan)
storage_unittest(test_multi_version_sstable_single_get)
storage_unittest(test_multi_version_sstable_single_scan)
storage_unittest(test_row_sample_iterator)
storage_unittest(test_all_micro_block_range_iterator)
storage_unittest(test_multi_version_sparse_sstable_multi_get)
storage_unittest(test_multi_version_sparse_sstable_multi_scan)
storage_unittest(test_multi_version_sstable_multi_get)
storage_unittest(test_multi_version_sstable_multi_scan)
storage_unittest(test_micro_block_row_scanner)
storage_unittest(test_micro_block_row_scanner_with_uncom_row)
storage_unittest(test_micro_block_row_scanner_with_special_uncom_row)
storage_unittest(test_migrate_logical_row_writer)
storage_unittest(test_migrate_rpc)
storage_unittest(test_table_store_stat_mgr)
storage_unittest(test_dag_size)
storage_unittest(test_handle_cache)
#storage_unittest(test_log_replay_engine replayengine/test_log_replay_engine.cpp)
storage_unittest(test_hash_performance)
storage_unittest(test_partition_migrator_table_key_mgr test_partition_migrator_table_key_mgr.cpp)
#storage_unittest(test_partition_merge_util compaction/test_partition_merge_util.cpp)
storage_unittest(test_row_fuse)
storage_unittest(test_partition_merge_multi_version test_partition_merge_multi_version.cpp)
storage_unittest(test_new_minor_fuser test_new_minor_fuser.cpp)
#storage_unittest(test_keybtree memtable/mvcc/test_keybtree.cpp)
storage_unittest(test_query_engine memtable/mvcc/test_query_engine.cpp)
storage_unittest(test_mvcc_callback memtable/mvcc/test_mvcc_callback.cpp)
storage_unittest(test_ob_freeze_info_snapshot_mgr test_ob_freeze_info_snapshot_mgr.cpp)
storage_unittest(test_multi_version_table_store test_multi_version_table_store.cpp)
storage_unittest(test_multiple_merge)
#storage_unittest(test_memtable_multi_version_row_iterator memtable/test_memtable_multi_version_row_iterator.cpp)
storage_unittest(test_storage_struct)
storage_unittest(test_tenant_file_mgr)
storage_unittest(test_fixed_size_block_allocator)
storage_unittest(test_partition_range_spliter)
storage_unittest(test_reserved_data_mgr)
storage_unittest(test_dag_warning_history)
